fix(ai-accounts): stop painting the healthy state green - #936
Merged
Conversation
A card at rest lit five emerald surfaces at once: the plan badge, the quota chip's border, its background, its label, and the success rate. Every account in good standing therefore rendered as one flat green field, and a colour that is always on cannot signal anything β the amber and rose tones meant to flag a quota worth acting on had to compete with it for attention. Return all five to the neutral slate the surrounding chips already use and keep only the progress ring green, so a healthy quota still reads as healthy without claiming the whole card. The amber (20-60%) and rose (<20%) branches, the warning/urgent/expired subscription tones and the sub-90% success rates are deliberately untouched: they are now the only coloured things on the grid, which is the point. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
useAuthFilesFilesPresentation.tsx sits above the 800-line limit and the gate only lets such files shrink, so the two explanatory lines added with the neutral subscription tone pushed it from 974 to 976. The reasoning lives in the previous commit message instead. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Panel-only. No backend change.
The problem
A card at rest lights five emerald surfaces at once:
SUBSCRIPTION_TONE_CLASSES.activechipClasschipLabelClasspercentClasssuccessRateClassAll five fire for an account in good standing β which is most accounts β so a healthy card renders as one flat green field. Green became the colour of nothing happening, and a colour that is always on cannot signal anything. Worse, the amber and rose tones that flag a quota actually worth acting on have to compete with it for attention.
Note this is not a layout problem: the four stat chips (
0/4334/547.1M/99.7%) were already neutralslate-100. They just read as green by association with everything around them.The change
All five surfaces return to the neutral slate the stat chips already use. The progress ring keeps its emerald fill, so a healthy quota still reads as healthy β the green is compressed from a full-card background down to a 14px ring.
Untouched on purpose: amber (20β60%), rose (<20%), the warning / urgent / expired subscription tones, and sub-90% success rates. They are now the only coloured things on the grid, which is the whole point.
Verified
Rendered against the app's own compiled CSS at three states:
Gates:
design:checkβ Β·lint0 errors β Β·size:checkβ Β·surface:checkβ Β·boundary:importsβ Β·buildβ Β· 243 tests / 21 files βThe second commit removes a two-line code comment:
useAuthFilesFilesPresentation.tsxis above the 800-line limit, the gate only lets such files shrink, and the comment pushed it 974 β 976. The reasoning lives in the first commit message instead.π€ Generated with Claude Code